/*
 * @lc app=leetcode.cn id=349 lang=javascript
 *
 * [349] 两个数组的交集
 */

// @lc code=start
/**
 * @param {number[]} nums1
 * @param {number[]} nums2
 * @return {number[]}
 */
var intersection = function (nums1, nums2) {
  if (nums1.length > nums2.length) {
    return intersection(nums2, nums1);
  }

  const nums1Set = new Set(nums1);
  const nums2Set = new Set(nums2);

  let rel = [];
  for (const value of nums1Set) {
    if (nums2Set.has(value)) {
      rel.push(value);
    }
  }

  return rel;
};
// @lc code=end
